package com.olda.play.system.service;


import com.olda.play.model.DropOption;
import com.olda.play.rpc.CommonResponseDto;
import com.olda.play.system.dto.SysRoleDto;
import com.olda.play.system.vo.SysRoleVo;

import java.util.List;

/**
 * 角色业务接口层
 * @author oldA
 */
public interface SysRoleService  {

    /**
     * 分页获取角色列表
     * @return
     */
    CommonResponseDto<List<SysRoleDto>> querySysRoleList(SysRoleVo param);

    /**
     * 新增或修改角色信息
     * @param param
     * @return
     */
    CommonResponseDto<Boolean> addOrUpdateRole(SysRoleVo param);

    /**
     * 给角色分配权限
     * @param param
     * @return
     */
    CommonResponseDto<Boolean> allotPerms(SysRoleVo param);

    /**
     * 删除角色
     * @param id 角色ID
     * @return
     */
    CommonResponseDto<Boolean> deleteByIds(Long id);

    /**
     * 新增用户时获取下拉角色数据
     * @return
     */
    CommonResponseDto<List<DropOption>> lisetRoleOptions();

}
